package com.gomore.opple.module.searchgoods;


import com.gomore.opple.BasePresenter;
import com.gomore.opple.BaseView;
import com.gomore.opple.rest.goods.DataDict;
import com.gomore.opple.web.cgform.consumer.entity.TOConsumerEntity;

import java.util.List;

public interface SearchGoodsContract {

    interface View extends BaseView<Presenter> {

        /**
         * 显示进度条
         */
        void showProgressDialog();

        /**
         * 隐藏进度条
         */
        void hideProgressDialog();

        /**
         * 展示消息
         *
         * @param msg 消息
         */
        void showMessage(String msg);

        /**
         * 展示消息
         *
         * @param msgId 消息id
         */
        void showMessage(int msgId);

        /**
         * 历史结果列表
         */
        void showHistoryFilter();

        /**
         * 热门推荐列表
         */
        void showHotTag();

    }

    interface Presenter extends BasePresenter {

        /**
         * 准备初始化数据
         */
        void prepareInitData();

        /**
         * 保存搜索关键字
         *
         * @param key
         */
        void saveSearchKey(String key);

        /**
         * 热门推荐
         */
        void getHotTag();

        /**
         * 获取热门推荐数据
         */
        List<DataDict> getHotTagData();

        /**
         * 获取本地历史数据
         */
        List<String> getHistoryData();

        /**
         * 清空历史记录
         */
        void clearHistory();
    }
}
